Inclinometer 4 Click
Inclinometer 4 Click demo application is developed using the NECTO Studio, ensuring compatibility with mikroSDK's open-source libraries and tools. Designed for plug-and-play implementation and testing, the demo is fully compatible with all development, starter, and mikromedia boards featuring a mikroBUS™ socket.
Click Library
- Author : Stefan Filipovic
- Date : Jun 2024.
- Type : I2C/SPI type
Software Support
Example Description
This example demonstrates the use of Inclinometer 4 Click board by reading and displaying accel data (X, Y, and Z axis) as well as temperature measurements on the USB UART.
Example Libraries
- MikroSDK.Board
- MikroSDK.Log
- Click.Inclinometer4
Example Key Functions
- inclinometer4_cfg_setup Config Object Initialization function.
void inclinometer4_cfg_setup(inclinometer4_cfg_t *cfg)
Inclinometer 4 configuration object setup function.
Inclinometer 4 Click configuration object.
Definition inclinometer4.h:374
- inclinometer4_init Initialization function.
err_t inclinometer4_init(inclinometer4_t *ctx, inclinometer4_cfg_t *cfg)
Inclinometer 4 initialization function.
struct inclinometer4_s inclinometer4_t
Inclinometer 4 Click context object.
- inclinometer4_default_cfg Click Default Configuration function.
err_t inclinometer4_default_cfg(inclinometer4_t *ctx)
Inclinometer 4 default configuration function.
- inclinometer4_get_int2_pin This function returns the interrupt 2 (INT2) pin logic state.
uint8_t inclinometer4_get_int2_pin(inclinometer4_t *ctx)
Inclinometer 4 get int2 pin function.
- inclinometer4_get_data This function reads accel X, Y, and Z axis data in g and temperature in degrees Celsius.
err_t inclinometer4_get_data(inclinometer4_t *ctx, inclinometer4_data_t *data_out)
Inclinometer 4 get data function.
Inclinometer 4 Click Axes data structure.
Definition inclinometer4.h:400
- inclinometer4_set_mode This function sets the device operating mode to standby or active.
err_t inclinometer4_set_mode(inclinometer4_t *ctx, uint8_t mode)
Inclinometer 4 set mode function.
Application Init
Initializes the driver and performs the Click default configuration which enables data ready interrupt on INT2 pin and sets full scale range to +/-2G and output data rate to 160ms.
{
log_cfg_t log_cfg;
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, " Application Init " );
if ( ( I2C_MASTER_ERROR == init_flag ) || ( SPI_MASTER_ERROR == init_flag ) )
{
log_error( &logger, " Communication init." );
for ( ; ; );
}
{
log_error( &logger, " Default configuration." );
for ( ; ; );
}
log_info( &logger, " Application Task " );
}
#define INCLINOMETER4_MAP_MIKROBUS(cfg, mikrobus)
MikroBUS pin mapping.
Definition inclinometer4.h:315
@ INCLINOMETER4_ERROR
Definition inclinometer4.h:415
void application_init(void)
Definition main.c:30
Application Task
Waits for a data ready interrupt, then reads and displays the accel data (X, Y, and Z axis) as well as temperature measurements on the USB UART.
{
{
log_printf( &logger,
" X: %.3f g\r\n", accel_data.
x );
log_printf( &logger,
" Y: %.3f g\r\n", accel_data.
y );
log_printf( &logger,
" Z: %.3f g\r\n", accel_data.
z );
log_printf( &logger,
" Temperature: %d degC\r\n\n", ( int16_t ) accel_data.
temperature );
}
}
@ INCLINOMETER4_OK
Definition inclinometer4.h:414
void application_task(void)
Definition main.c:67
int8_t temperature
Definition inclinometer4.h:404
float y
Definition inclinometer4.h:402
float x
Definition inclinometer4.h:401
float z
Definition inclinometer4.h:403
Application Output
This Click board can be interfaced and monitored in two ways:
- Application Output - Use the "Application Output" window in Debug mode for real-time data monitoring. Set it up properly by following this tutorial.
- UART Terminal - Monitor data via the UART Terminal using a USB to UART converter. For detailed instructions, check out this tutorial.
Additional Notes and Information
The complete application code and a ready-to-use project are available through the NECTO Studio Package Manager for direct installation in the NECTO Studio. The application code can also be found on the MIKROE GitHub account.